.toggle() {
  .gitmaster-toggle {
    background-color: #f2f5f7;
    border-radius: 0 4px 4px 0;
    border: 1px solid #e0e4e7;
    border-left: none;
    box-shadow: 2px 0 5px 0 rgba(118, 118, 118, 0.11);
    opacity: 1;
    height: 74px;
    line-height: 1;
    padding: 16px 4px;
    position: absolute;
    right: -35px;
    text-align: center;
    top: 33%;
    width: 35px;
    z-index: @index-base;
    transition: right 0.25s ease-in 0.2s, opacity 0.35s ease-in 0.2s;
    cursor: pointer;

    > .gitmaster-toggle-icon {
      .icon-v2(@octicons-chevron-right, @font-size: 15px, @color: @dark, @hover-color: @dark);
      left: 3px;
      top: 5px;
    }

    > .toggle-icon {
      width: 25px;
      height: 25px;
    }

    > span {
      color: @dark;
      display: inline-block;
      font-size: 12px;
      left: -1px;
      line-height: 14px;
      position: relative;
      top: 0;
    }

    .popup {
      background-clip: padding-box;
      background-color: white;
      border-radius: 5px;
      border: 1px solid rgba(0, 0, 0, 0.15);
      box-shadow: 0 3px 12px rgba(0, 0, 0, 0.25);
      cursor: pointer;
      font-weight: 400;
      left: 0;
      line-height: 20px;
      opacity: 0;
      position: absolute;
      padding: 0;
      text-align: left;
      text-transform: none;
      top: calc(~'100% + 2px');
      transition: opacity 0.3s linear;
      white-space: normal;
      width: 265px;
      z-index: @index-popup;

      &:hover {
        color: black;
      }

      &.show {
        opacity: 1;
      }

      & > .arrow,
      & > .arrow:after {
        position: absolute;
        display: block;
        width: 0;
        height: 0;
        border-color: transparent;
        border-style: solid;
      }

      & > .arrow {
        left: 15px;
        top: -6px;
        border-width: 6px;
        margin-left: -6px;
        border-top-width: 0;
        border-bottom-color: rgba(0, 0, 0, 0.25);
      }

      & > .arrow:after {
        border-width: 5px;
        content: '';
        top: 1px;
        margin-left: -5px;
        border-top-width: 0;
        border-bottom-color: white;
      }

      & > .content {
        padding: 9px 14px;
        font-size: 13px;

        kbd {
          display: inline-block;
          padding: 3px 5px;
          font: 11px SFMono-Regular, Consolas, Liberation Mono, Menlo, monospace;
          line-height: 10px;
          color: #444d56;
          vertical-align: middle;
          background-color: #fafbfc;
          border: 1px solid #d1d5da;
          border-radius: 3px;
          box-shadow: inset 0 -1px 0 #d1d5da;
        }
      }
    }
  }
}
